package vue;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import modele.Album;
import modele.ImageZoomer;
/**
 * Affiche une BD
 * 
 * @author Plancq Charlotte, Lanvin Kévin, Darras Raphael
 *
 *
 */
public class AffichageBD extends JPanel {
	private static final long serialVersionUID=1L;
	private JLabel titre, editeur, auteur, genre, serie, note, img;
	private JTextArea synopsis, commentaires;
	private JButton modifier,retour;
	private JPanel p1, p2;
	private Album a;
	//private AffichageGlobal ag;

	public AffichageBD(final AffichageGlobal ag,final Album a){
		this.a=a;
		//this.ag=ag;
		this.setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
		this.add(Box.createVerticalStrut(40)); 

		titre = new JLabel(a.getTitre());
		titre.setFont(new Font("Arial", Font.BOLD, 26));
		titre.setAlignmentX(CENTER_ALIGNMENT);
		add(titre);
		this.add(Box.createVerticalStrut(40));



		ImageIcon icon = new ImageIcon("img\\"+a.getImage(),"Premi�re de couverture");
		Image zoom = ImageZoomer.scaleImage(icon.getImage(), 200);
		Icon iconScaled = new ImageIcon(zoom);
		img=new JLabel(iconScaled);
		img.setAlignmentX(CENTER_ALIGNMENT);
		add(img);

		add(Box.createVerticalStrut(40));

		editeur = new JLabel("Editeur : " +a.getEditeur());
		auteur = new JLabel("Auteur : " + a.getAuteur());
		genre = new JLabel("Genres : " + a.getGenre());
		serie = new JLabel("Serie : " + a.getSerie());		
		synopsis = new JTextArea("Synopsis : " + a.getSynopsis());
		synopsis.setAlignmentX(CENTER_ALIGNMENT);
		synopsis.setEditable(false);
		synopsis.setLineWrap(true); synopsis.setWrapStyleWord(true);
		synopsis.setBorder(null);
		synopsis.setBackground(new Color(214, 217, 223));
		note = new JLabel("Note : " + a.getNote() + "/10");
		commentaires = new JTextArea("Commentaires : " + a.getCommentaire());
		commentaires.setAlignmentX(CENTER_ALIGNMENT);
		commentaires.setEditable(false);
		commentaires.setLineWrap(true); commentaires.setWrapStyleWord(true);
		commentaires.setBorder(null);
		commentaires.setBackground(new Color(214, 217, 223));
		modifier = new JButton("Modifier l'album");
		retour = new JButton("Retour");	

		//Ligne Editeur - Auteur
		p1 = new JPanel();
		p1.setLayout(new BoxLayout(p1, BoxLayout.X_AXIS));
		p1.add(editeur); p1.add(Box.createHorizontalStrut(40)); p1.add(auteur);
		this.add(p1);	this.add(Box.createVerticalStrut(10));

		//Ligne Genre / Série / Note
		p2 = new JPanel();
		p2.setLayout(new BoxLayout(p2, BoxLayout.X_AXIS));
		p2.add(genre); p2.add(Box.createHorizontalStrut(40));
		p2.add(serie); p2.add(Box.createHorizontalStrut(40)); p2.add(note);
		this.add(p2); 		this.add(Box.createVerticalStrut(10));

		this.add(synopsis); 		this.add(Box.createVerticalStrut(10));
		this.add(commentaires);		this.add(Box.createVerticalStrut(30));

		modifier.addActionListener(new ActionListener() {

			@Override
			public void actionPerformed(ActionEvent arg0) {
				// TODO Auto-generated method stub
				ag.setCentre(new AffichageModifAlbum(ag, a));
			}
		});
		this.add(modifier);

		retour.addActionListener(new ActionListener() {



			@Override
			public void actionPerformed(ActionEvent e) {
				// TODO Auto-generated method stub
				if(ag.getGauche().getList().isSelectionEmpty())
					ag.setCentre(new AffichageRecherche(ag, ag.getRecherche()));
				else
					ag.setCentre(new AffichageCollection(ag));
			}
		});
		add(retour);
	}

	public Album getAlbum(){
		return a;
	}
}
